package model

import (
	"github.com/jinzhu/gorm"
)

type Auth struct {
	*Model
	AppKey    string `json:"app_key,omitempty"`
	AppSecret string `json:"app_secret,omitempty"`
}

func (a Auth) TableName() string {
	return "blog_auth"
}

// Get 主要用于服务器端在获取客户端传入的 app_key 和 app_secret 后，根据传入的认证信息进行验证，以此判别是否真的存在这样一条数据
func (a Auth) Get(db *gorm.DB) (Auth, error) {
	var auth Auth
	db = db.Where(
		"app_key = ? AND app_secret = ? AND is_del = ?",
		a.AppKey,
		a.AppSecret,
		0,
	)
	err := db.First(&auth).Error
	if err != nil && err != gorm.ErrRecordNotFound {
		return auth, err
	}
	return auth, nil
}
